Modern graphics processing units (GPUs) are inexpensive commodity hardwarethat offer Tflop/s theoretical computing capacity. GPUs are well suited to manycompute-intensive tasks including digital signal processing. We describe the implementation and performance of a GPU-based digitalcorrelator for radio astronomy. The correlator is implemented using the NVIDIACUDA development environment. We evaluate three design options on twogenerations of NVIDIA hardware. The different designs utilize the internalregisters, shared memory and multiprocessors in different ways. We find thatoptimal performance is achieved with the design that minimizes global memoryreads on recent generations of hardware. The GPU-based correlator outperforms a single-threaded CPU equivalent by afactor of 60 for a 32 antenna array, and runs on commodity PC hardware. Theextra compute capability provided by the GPU maximises the correlationcapability of a PC while retaining the fast development time associated withusing standard hardware, networking and programming languages. In this way, aGPU-based correlation system represents a middle ground in design space betweenhigh performance, custom built hardware and pure CPU-based softwarecorrelation. The correlator was deployed at the Murchison Widefield Array 32 antennaprototype system where it ran in real-time for extended periods. We brieflydescribe the data capture, streaming and correlation system for the prototypearray.
展开▼